﻿/************************************************************
*
* 命名空间：Deep.Algorithm.Sorting
* 文件名称：SortAlgorithm.cs
* 创建者：王嘉庆
* 创建日期：2021-05-28 06:43:42
* 邮箱：1101202419@qq.com
* 博客：https://blog.csdn.net/wuxinwudai
* 功能描述：
* 使用说明：
* 最后更新日期：
*************************************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Deep.Algorithm.Sorting
{
    public abstract class SortAlgorithm : ISortAlgorithm
    {
        /// <summary>
        /// 交换元素
        /// </summary>
        /// <param name="arr"></param>
        /// <param name="i"></param>
        /// <param name="j"></param>
        public void Exchange<T>(T[] arr,int i,int j) where T: IComparable
        {
            IComparable tmp = arr[i];
            arr[i] = arr[j];
            arr[j] = (T)tmp;
        }
        public abstract T[] Sort<T>(T[] arr) where T : IComparable;
    }
}
